package a.f.d.a;

import a.a.m;
import a.c.bb;
import a.c.k;
import a.c.w;
import a.c.x;
import a.f.o;
import a.i.l;
import a.i.z;

import java.util.Comparator;

public class dc
  implements zb
{
  private zb a;
  private yb b;
  private Comparator c;
  public static boolean d;
  
  public dc(zb paramzb)
  {
    this(paramzb, new s(), null);
  }
  
  public dc(zb paramzb, yb paramyb, Comparator paramComparator)
  {
    if ((paramzb == null) || (paramyb == null)) {
      throw new NullPointerException();
    }
    this.c = paramComparator;
    this.b = paramyb;
    this.a = paramzb;
  }
  
  public void a(o paramo, ac paramac, bc parambc)
  {
    boolean bool2 = d.R;
    boolean bool1 = d.Q;
    zb localzb = a();
    yb localyb = b();
    x localx = paramo.B();
    try
    {
      int i = m.a(paramo, localx);
      if (!bool2) {
        if (i == 1)
        {
          localzb.a(paramo, paramac, parambc);
          if ((!bool2) && (!bool1)) {
            break label304;
          }
        }
      }
      bb[] arrayOfbb = new bb[i];
      int j = 0;
      if (j < arrayOfbb.length)
      {
        arrayOfbb[j] = new bb();
        j++;
      }
      for (;;)
      {
        if ((bool2) || (!bool1))
        {
          if (!bool1) {
            break;
          }
          if (!bool2)
          {
            Object localObject1 = paramo.v();
            if (((w)localObject1).e())
            {
              arrayOfbb[localx.getInt(localObject1.d())].add(((w)localObject1).d());
              ((w)localObject1).f();
            }
            for (;;)
            {
              if ((bool2) || (!bool1))
              {
                if (!bool1) {
                  break;
                }
                if (!bool2) {
                  a(arrayOfbb, localx);
                }
              }
            }
            localObject1 = new z(paramo, localx);
            int k = 0;
            if (k < i) {}
            while (bool2)
            {
              Object localObject2 = localx.get(arrayOfbb[k].m());
              ((z)localObject1).c(localObject2);
              ac localac = paramac.b();
              localzb.a(paramo, localac, parambc);
              localyb.a(paramo, parambc, localac, paramac);
              k++;
              if ((!bool2) && (bool1)) {
                return;
              }
              if (!bool1) {
                break;
              }
            }
            ((z)localObject1).g();
          }
        }
      }
    }
    finally
    {
      label304:
      paramo.a(localx);
    }
  }
  
  protected void a(bb[] paramArrayOfbb, k paramk)
  {
    Comparator localComparator = c();
    if (localComparator != null) {
      l.a(paramArrayOfbb, localComparator);
    }
  }
  
  public zb a()
  {
    return this.a;
  }
  
  public void a(zb paramzb)
  {
    if (paramzb == null) {
      throw new NullPointerException();
    }
    this.a = paramzb;
  }
  
  public yb b()
  {
    return this.b;
  }
  
  public void a(yb paramyb)
  {
    if (paramyb == null) {
      throw new NullPointerException();
    }
    this.b = paramyb;
  }
  
  public Comparator c()
  {
    return this.c;
  }
  
  public void a(Comparator paramComparator)
  {
    this.c = paramComparator;
  }
}



/* Location:           E:\idea\

 * Qualified Name:     a.f.d.a.dc

 * JD-Core Version:    0.7.0.1

 */